package cc.rengu.redp.bizimpl.upmp.service;


/*import cc.rengu.ecp.core.exception.ServiceException;
import cc.rengu.ecp.core.util.Common;
import cc.rengu.ecp.core.util.DateUtils;
import cc.rengu.ecp.core.web.view.OperationResult;
import cc.rengu.ecp.platform.core.security.AuthContextHolder;
import cc.rengu.ecp.platform.mcmp.bean.*;
import cc.rengu.ecp.platform.mcmp.common.BusinessContainer;
import cc.rengu.ecp.platform.mcmp.enums.BompTxnNumEnum;
import cc.rengu.ecp.platform.mcmp.enums.IgasAcctStatusEnum;
import cc.rengu.ecp.platform.mcmp.enums.MompTxnNumEnum;
import cc.rengu.ecp.platform.mcmp.util.CommonUtils;
import cc.rengu.ecp.platform.module.auth.entity.User;
import cc.rengu.ecp.platform.module.sys.entity.DataDict;
import cc.rengu.ecp.platform.module.sys.service.DataDictService;*/

import cc.rengu.igas.momp.facade.bean.*;
import cc.rengu.igas.momp.facade.request.QueryBankToClientMcStatRequest;
import cc.rengu.igas.momp.facade.request.QueryCouponDetailRequest;
import cc.rengu.igas.momp.facade.request.QueryMcListInfoRequest;
import cc.rengu.igas.momp.facade.request.QueryMcMerUserListRequest;
import cc.rengu.igas.momp.facade.response.QueryCouponMcDetailInfoResponse;
import cc.rengu.igas.momp.facade.response.QueryMoneyOffMcDetailInfoResponse;
import cc.rengu.redp.bizimpl.upmp.bean.MarketManagerRequest;
import cc.rengu.redp.bizimpl.upmp.vo.CustomerMcInfoVO;
import cc.rengu.redp.bizimpl.upmp.vo.OperationResult;
import cc.rengu.redp.bizimpl.upmp.vo.UpmpUserInfoVO;
import cc.rengu.redp.common.domain.QueryRequest;
import cc.rengu.redp.common.exception.RedpException;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springframework.data.domain.Pageable;

import java.util.List;
import java.util.Map;

public interface ICustomerMarketService {

    /*    /**
     * 卡券活动明细列表查询
     *
     * @param reqDto
     * @param pageable
     * @return
     */
    public IPage<CouponListInfoBean> findCouponDetailByPage(QueryCouponDetailRequest reqDto, QueryRequest pageable) throws RedpException;

    /**
     * 减免类营销活动的编辑
     *
     * @param entity
     */
    public void editMoneyOffMcSave(CustomerMcInfoVO entity) throws RedpException;


    /**
     * 卡券类营销活动的编辑
     *
     * @param entity
     */
    public void editCouponMcSave(CustomerMcInfoVO entity) throws RedpException;


    /**
     * 根据活动编号查询减免类活动详情
     *
     * @param mcNo
     * @return
     *//*
    public QueryMoneyOffMcDetailInfoResponse getMoneyOffMcDetailData(String mcNo, String queryType, String queryRole) ;

    */

    /**
     * 根据活动编号查询卡券类活动详情
     *
     * @param mcNo
     * @return
     *//*
    public QueryCouponMcDetailInfoResponse getCouponMcDetailData(String mcNo, String queryType, String queryRole);

    *//**
     * 减免类营销活动的发布
     *
     * @param entity
     *//*
    public OperationResult publishMoneyOffMc(Model model, CustomerPublishRequest entity, String msg, boolean isMompPayment);

    */

    /**
     * 卡券类营销活动/发布/暂停/终止/启用
     *
     * @param entity
     *//*
    public OperationResult publishCouponMc(Model model, CustomerPublishRequest entity, String msg, boolean isMompPayment);
    */

    /**
     * 对客类营销活动报表查询
     *
     * @param reqDto
     * @return
     */
    public BankToClientMcStatInfoBean reportActivity(QueryBankToClientMcStatRequest reqDto) throws RedpException;

/*    *
     * 减免类
     *
     * @param model
     * @param mcNo
     * @param queryType
     * @param queryRole
     */
    public QueryMoneyOffMcDetailInfoResponse setMoneyOffMcModel(Map<String, Object> map,String mcNo, String queryType, String queryRole) throws RedpException;

/*    *
     * 卡券类
     *
     * @param model
     * @param mcNo
     * @param queryType
     * @param queryRole*/

    public QueryCouponMcDetailInfoResponse setCouponMcModel(Map<String, Object> map, String mcNo, String queryType, String queryRole) throws RedpException;

/*    public Result<QueryMcMerUserListInfoResponse> getMchntResultList(QueryMcMerUserListRequest reqDto, String pageIndex, String pageSize , String queryType) ;*/

    /**
     * 对客营销活动列表查询
     * 所有营销活动待审核列表查询
     *
     * @param queryRequest
     * @param reqDto
     * @return
     */
    IPage<McListInfoBean> findMcByPage(QueryRequest queryRequest, QueryMcListInfoRequest reqDto) throws RedpException;

    /**
     * 减免类营销活动的管理，包括删除草稿、审核通过及退回
     *
     * @param entity
     */
    void manageMoneyOffMc(MarketManagerRequest entity) throws RedpException;

    /**
     * 卡券类营销活动的管理，包括删除草稿、审核通过及退回
     *
     * @param entity
     */
    void manageCouponMc(MarketManagerRequest entity) throws RedpException;

    /**
     * 营销打款
     *
     * @return
     */
    OperationResult mompPayment(String mcNo, McBankAccountInfoBean accountInfoBean, UpmpUserInfoVO user, String adjustAmt);


    /**
     * 获取商户信息列表
     *
     * @param reqDto
     * @param pageIndex
     * @param pageSize
     * @return
     */
    IPage<McMchntInfoBean> getMchntList(QueryMcMerUserListRequest reqDto, String pageIndex, String pageSize) throws RedpException;

    /**
     * 获取商圈信息
     *
     * @param mcNo
     * @param pageIndex
     * @param pageSize
     * @return
     */
    List<McMchntInfoBean> getMchntCircleList(String mcNo, String pageIndex, String pageSize) throws RedpException;
}